import akshare as ak
import pandas as pd

# 获取当日个股资金流向数据
def get_daily_fund_flow():
    try:
        # 获取当日资金流向数据
        fund_flow_df = ak.stock_individual_fund_flow_rank(indicator="今日")
        return fund_flow_df
    except Exception as e:
        print(f"获取资金流向数据失败: {e}")
        return None

# 保存数据到 Excel 文件
def save_to_excel(data, file_path):
    if data is None:
        print("数据为空，无法保存到 Excel")
        return
    try:
        # 保存到 Excel 文件
        data.to_excel(file_path, index=False, engine="openpyxl")
        print(f"数据已成功保存到 {file_path}")
    except PermissionError as e:
        print(f"保存数据到 Excel 失败: 权限错误 ({e})")
    except FileNotFoundError as e:
        print(f"保存数据到 Excel 失败: 文件路径错误 ({e})")
    except Exception as e:
        print(f"保存数据到 Excel 失败: {e}")

# 主函数
if __name__ == "__main__":
    # 获取当日资金流向数据
    daily_fund_flow = get_daily_fund_flow()

    if daily_fund_flow is not None:
        # 保存数据到 Excel 文件
        file_path = r"C:\Users\Administrator\Desktop\量化研究\python\get_daily_fund_flow\daily_fund_flow.xlsx"  # 修改为你的文件路径
        save_to_excel(daily_fund_flow, file_path)